نمایندگی زیمنس: زبان برنامه نویسی FBD و کاربرد آن در PLC های زیمنس
ارسال شده در تاریخ: 23 تیر 1397چاپدر نمایندگی زیمنس زبان FBD یکی از زبانهایی است که در برنامه نویسی برای PLC از آن استفاده میشود.
در زبان FBD از بلوک های منطقی جبر بولی برای برنامه نویسی استفاده میشود، شما می توانید از دستورات منطقی که شامل AND , OR , NOT , NAND , NOR , XOR , AND با لبه بالا رونده، NAND با لبه پایین رونده است، برای نوشتن برنامه خواسته شده استفاده کنید. ذکر این نکته ضروری است که این دستورات مخصوص زبان FBD هستند و در زبان LAD آیکن توابع پایه وجود ندارند.
زمانی که وارد محیط نرم افزار LOGO! در حالت FBD میشویم در ستونی در سمت چپ، مجموعه دستورات قابل مشاهده هستند؛ توابع منطقی در پوشه ای به اسم Basic Fanctions قرار دارند.
تابع AND
این تابع دارای چهار ورودی است و خروجی آن تنها در صورتی یک میشود که تمام ورودی های آن یک باشد. لازم به ذکر است که اگر از پایه ای استفاده نشود، خود نرمافزار به صورت پیش فرض آن پایه را یک میگیرد.
جدول صحت این تابع به صورت زیر است:
در زبان LAD چنین تابعی وجود ندارد ولی معادل آن را به راحتی به صورت زیر میتوان کشید.
همان طور که دیده میشود تنها در صورتی خروجی روشن میشود که هر چهار ورودی وصل شده باشند.
نکته: منظور از کلید این است که پس از زدن آن، کلید برق دار بماند و منظور از پوشباتن به این معنی است که پس از فشردن به صورت لحظهای برقدار باشد.
ورودی مجازی
این نوع ورودی همان طور که از اسم آن مشخص است وجود خارجی ندارد و به صورت نرمافزاری تعریف میشود. چنانچه بخواهیم ورودی را به صورت مجازی یک در نظر بگیریم از گزینه (High) Statuse 1 به عنوان یک مجازی استفاده میکنیم و چنانچه بخواهیم ورودی را به صورت مجازی صفر در نظر بگیریم از گزینه (Low) Statuse 0 به عنوان صفر مجازی استفاده میکنیم.
مثال 10: برنامه ای بنویسید که در آن اپراتور یک دستگاه پرس باید پوشباتنهای I1 و I2 را با هم فشار دهد تا پرس عمل کند.
برنامه بالا را میتوان در زبان FBD با یک تابع AND به صورت زیر نوشت:
تابع AND (edge)
اگر تمام ورودی ها به غیر از یک ورودی، مقدار یک را دارا باشند، در صورتی که آن ورودی باقی مانده را هم یک کنیم، خروجی برای یک لحظه یک میشود؛ به همین دلیل میگوییم که این تابع حساس به لبه بالا رونده است.
دیاگرام زمانی این تابع در شکل قابل مشاهده است.
جدول عملکرد این تابع به این صورت است: